import request from '@/utils/http'


/**
 * 获取内容列表API
 *
 * @param params 查询参数对象
 * @returns 返回Promise对象，解析后为内容列表对象
 */
export const contentListApi = (params: any) => {
  return request.get('/api/content', { params })
}

/**
 * 获取内容详情API
 *
 * @param cid 内容ID
 * @returns 返回Promise对象，解析后为内容详情对象
 */
export const contentDetailApi = (cid: string, action: string) => {
  return request.get(`/api/content/${cid}?action=${action}`)
}

/**
 * 新增内容API
 *
 * @param data 内容数据对象
 * @returns 返回Promise对象
 */
export const contentAddApi = (data: any) => {
  return request.post('/api/content', data)
}

/**
 * 更新内容API
 *
 * @param cid 内容ID
 * @param data 内容数据对象
 * @returns 返回Promise对象
 */
export const contentUpdateApi = (cid: string, data: any) => {
  return request.put(`/api/content/${cid}`, data)
}

/**
 * 删除内容API
 *
 * @param cid 内容ID
 * @returns 返回Promise对象
 */
export const contentDeleteApi = (cid: string) => {
  return request.delete(`/api/content/${cid}`)
}

/**
 * 修改内容状态API（上架/下架）
 *
 * @param cid 内容ID
 * @param status 状态值 publish-上架 unpublish-下架
 * @returns 返回Promise对象
 */
export const contentStatusApi = (cid: string, status: string) => {
  return request.post(`/api/content/${cid}/action`, { status })
}

/**
 * 获取案例列表API
 *
 * @param params 查询参数对象
 * @returns 返回Promise对象，解析后为案例列表对象
 */
export const caseListApi = (params: any) => {
  return request.get('/api/case_applications', { params })
}